Many computer vision systems for automatic surveillance and monitoring seek to detect and segment transitory objects that appear temporarily in the system's field of view. Examples include traffic monitoring applications that count vehicles and automatic surveillance systems for security. An example of such a system is disclosed in U.S. patent application Ser. No. 08/372,924 filed Jan. 17, 1995, the disclosure of which is incorporated herein by reference.
Given an image sequence obtained from a mostly stationary camera, these systems typically use a reference image of the scene of interest containing only the static objects in the scene and none of the moving objects. The system then determines the changes in the scene by comparing a "present" image with the reference image. Such a reference image is useful in many applications where it is necessary to delineate individual objects that appear in the scene only briefly or that do not belong in the scene. Two such applications are security surveillance and traffic monitoring.
The problem of constructing a reference image is easy in theory but difficult in practice. One would like such an image to adapt quickly to illumination changes such as those created by a passing cloud or lengthening shadows due to movement of the sun. On the other hand, the image should adjust slowly enough to avoid incorporating objects that are temporarily stopped, such as vehicles which are waiting at an intersection or stuck in a traffic jam.
The obvious method for constructing a reference image is to update the image using a recursive temporal filter, as in EQU r.sub.t (x,y)=r.sub.t-1 (x,y)+.gamma..times.i.sub.t (x,y)-r.sub.t-1 (x,y)!
where r.sub.t represents the reference image after frame t, and i.sub.t represents the t'th frame of the input sequence. The constant .gamma. determines the "responsiveness" of the construction process.
Unfortunately, there is no single value of .gamma. that will adjust r.sub.t quickly enough to add illumination changes to the reference image but slowly enough to keep temporarily-stopped objects out of the reference image. Furthermore, a .gamma. that slows updating sufficiently that temporarily-stopped vehicles will not be incorporated into the reference will prevent rapid initial construction of the reference image at system startup.
A second problem with using a simple temporal filter as described above is that the filter is global in nature and applies to the entire image. In some cases it is desirable to update different regions of the image at different times. A good example is a camera which overlooks two different lanes of traffic. Sometimes the traffic in one of these lanes may be flowing freely, which is a favorable condition to use the temporal filter, while the other lane may contain stopped traffic, where such a filter may incorporate the stopped traffic into the reference image.
Therefore, a need exists in the art for an improved method and apparatus for generating and updating a reference image for use in an image processing system.